The Macintosh Memory Guide
A simple explanation of memory and how to get the most from your Macintosh
6th Edition

Connectix Corporation 
2600 Campus Drive • San Mateo, CA • 94403 
(800) 950-5880 • (415) 571-5100 • (415) 571-5195 fax
Applelink: Connectix • CompuServe: MACAVEN • America OnLine: Connectix

THE BASICS

There are two main kinds of memory on every personal computer. All your files are normally stored on a hard drive or other “mass storage device”. Hard drives hold tens, hundreds, or even thousands of megabytes of information, enough to hold the information in a whole shelf full of books. Moreover, they retain this information even when power is turned off, that is they are "non–volatile". But the Central Processor Unit (the brain of your computer) works much faster than the hard drive can supply information. So your Mac also has some fast, volatile memory made out of semiconductors. This is your RAM, Random Access Memory. 

Information flows from the hard drive, to RAM, to the CPU, and back, whenever you use your computer. When you launch a program from your hard disk, some or all of the application software is copied from the hard drive into the RAM, where the CPU can access it at high speed. When you open a document, the same thing happens. When you try to shut down your computer with documents open, the Mac will ask you if you want to save them. If you say yes, it copies the information in RAM back to the hard drive, where the Mac can “remember” it even after power is turned off. If you say no, the information is lost because RAM is volatile and forgets its contents when power is turned off.

RAM can usually access a specific piece of data about 1000 times faster than a hard drive, fast enough to keep up with the CPU. But RAM costs roughly 10 times as much per megabyte (MB) as hard drive space. Consequently, a lot of effort goes into using RAM as sparingly as possible. Many Mac applications are “segmented” so that only part of the software is loaded into RAM when the application is launched. The rest is brought in when needed. For example, most word processors will only load the spell check routines and the dictionary when you request a spell check. Some applications can also work with documents which are “partitioned”, so that part of the document is in RAM and part stays on the hard drive.

All of this is done so that you can maximize the amount of work that can be accomplished within a given amount of “application memory,” which is usually equal to the amount of RAM installed in your Mac. Application memory is the space your computer uses to hold your System and applications when they are running. (You can see this by switching into the Finder, pulling down the Apple menu, and looking at “About This Macintosh...”)

The size of the application memory space limits the combined size of the System and all the applications you can have open at the same time. You can adjust the size allocated to your applications (See “Benefits of Adding Memory”), but if you make them too small you may not be able to use large documents.

Two technique, RAM doubling and virtual memory (See “Memory Extension”) can extend application memory by reorganizing memory, compressing memory, and/or swapping information between the hard drive and RAM in the background. This makes your Mac work as if it has more RAM than is actually installed. Using extended memory, you have more application memory than physical RAM.

About ROMs

ROMs (Read Only Memory) are chips built into the Mac which contain part of the operating system. Since they are Read Only, nothing more can be written on them, so they are not used as memory like the RAM and hard drive. ROM is non–volatile and contains the information your Mac needs in order to remember how to read the rest of the operating system that is stored in the System Folder on your hard drive when you startup the computer. The computer learns a bit from the ROM, then more from the System Folder, and then a lot from the rest of the hard drive.

This reminded early (pre–Apple) programmers of the expression “lifting yourself up by your own bootstraps.” That’s how the start–up process came to be known as “booting.” The original bootstrapping process involved flipping switches and then feeding in paper tape, but the idea was the same.

ROMs contain many important parts of the operating system beyond the information just needed to boot the computer. The importance of ROMs in the context of memory configurations is that this operating system software can limit the amount of RAM that can be used on some Macs.

As you browse the Reference Guide you may notice that certain classes of Macs have similar limitations, caused because they use the same ROMs. For example, the Mac II, IIx, IIcx, and SE/30 need the MODE32 software in order to use System 7’s 32–bit addressing. The LC, LC II, and Classic II ROMs limit these systems’ total RAM addressing to a maximum of 10MB. (20MB if you use RAM doubling, see “Using Large Amounts of Memory”).

The ROMs in the Mac Plus, SE and Classic do not support 32–bit addressing at all. They are also not compatible with standard System 7 VM. They do work, however, with Connectix Virtual (see “Reference Guide”) when an accelerator card is installed. The accelerator card is needed because the main processor (the CPU) can also limit the addressing capacity of the Mac (see “History of 32-Bit Addressing”).

Estimating Memory Requirements

When you first start to use your Macintosh and whenever you change the way you use your system, you need to evaluate how much physical RAM to use. A simple Mac Plus running System 6 can sometimes make do with as little as one megabyte, while the 16 SIMM slots of the Quadra 950 can be loaded with as much as 256MB. So how do you decide?

Normal Memory Requirements

First of all, just to be able to start the computer you will always need at least 1MB under System 6 and at least 2MB under System 7. Practical limits, in fact, are twice that. It rarely pays to run System 6 with less than 2MB and almost all System 7 users will want to install at least 4MB.

Such a minimum configuration will probably suffice if you plan to work primarily with standard word processing, small spreadsheets (one printed page or so), and common communication or electronic mail applications. 

If you want to do more than that, the amount of RAM you need depends on whether or not you can use extended memory (see “Memory Extension”). If you cannot use extended  memory, you will need enough physical RAM to hold the System plus all of the applications you want to have open at the same time. System 6 takes up about 500 kilobytes (500K) minimum, and System 7 about 1.5MB, but both get bigger if you use a lot of different fonts (typically 10–40K per font) or extensions (from 20–500K each).

The amount of space taken by each application can usually be adjusted (see “Benefits of Adding Memory”), but you will need to allocate enough space to hold the application software as well as the documents you plan to use. Applications typically take from 500K to 2MB each, though they often vary more than that. So, for example, a 4MB Macintosh using up 1.5–2MB for System 7 could probably open 2–3 typical applications. But if it only had 2MB it might not be able to open even one application, depending on the size of the application and the number of fonts and extensions installed.

Effects of Extended Memory on Memory Needs

If you can use extended memory, the situation changes. There are two choices, RAM doubling or virtual memory. Usually RAM doubling is usually preferable because of speed. If you use RAM doubling you will have exactly twice as much application memory as the amount of physical RAM installed. Performance will generally be similar to real RAM. The exception is if you need to assign more application space to any one application than the amount of actual RAM that is installed. In this case you may find speed reductions of a few tens of percent. 

If you use virtual memory your application memory limit is based on how much free space you have on your hard drive. You will be able to open up a large number of applications at the same time, probably as many as you would like. But whenever you use one that is larger than the amount of RAM not already tied up by your System, you may notice a substantial speed loss. This is because virtual memory tries to put as much of the foreground application (the one you are currently using) into RAM as it can. It keeps whatever won’t fit into RAM on the hard drive. If there isn’t enough space in RAM to hold the System and the entire foreground application, including any documents you are using, then the memory manager may have to do a lot of swapping of information between the hard drive and RAM.

So, the rule of thumb with RAM doubling is to try to have at least enough RAM to hold your largest commonly used application.  The rule of thumb with virtual memory is to try to have at least enough RAM to hold your largest commonly used application and the System at one time. If you try to use a large application with too little real RAM, you can easily slow your Macintosh’s performance 20% or more. But if you adhere to this rule, the only time that  memory extension should be noticeable is when you switch between applications. Then, the memory manager has to get a lot of information from the hard drive or compressed memory and copy it  to uncompressed RAM while the new foreground application is “swapped in.” You may notice a few tenths of a second pause while this happens. With lots of RAM, several entire applications can stay in RAM at the same time and switching between them will occur at RAM speed.

When to Use Large SIMMs

Recently 4MB and 16MB SIMMs have become popular for particularly memory–intensive applications. Common applications that may require large amounts of physical RAM are image processing, scanning, sound editing, mixing and manipulation, CAD, multimedia (especially uncompressed video), complex mathematical modeling, and use of large data servers for data bases. If you are planning to use a Macintosh primarily for one of these applications, you may want to consult the application vendor or reseller about memory requirements.

The most common use of high–density RAM is image processing. A single 8 1/2" x 11" 8–bit color document takes up almost 8MB of memory. In 24–bit color this amount triples to 23MB. In many applications twice that amount is needed in order to hold the document and an Undo buffer (a copy of the document before recent changes were made–so you can Undo). If the image and Undo buffer can all be held in RAM, processes (like color separating and rendering) can happen hundreds of times faster than if information needs to be swapped in and out of the hard drive. This is true whether the swapping occurs because of a general virtual memory manager, (System 7 VM or Connectix Virtual), or because the application has its own application–specific virtual memory, like Adobe Photoshop. 

Scanning and/or desktop publishing projects can often be accomplished in 4–8MB of memory, but not always. Scanning memory requirements vary according to the resolution of the scanner (memory needs increase as the square of the resolution), and the area to be scanned (linear increase with area). A black and white scan of an 8 1/2" x 11" document at 300 dots per inch (dpi)resolution only takes up about 1MB, plus, usually, another 1MB for the Undo buffer. On the other hand, a 1200 dpi scan (for film output) of an 11" x 17" format would take up 32 times as much memory, or just over including an Undo buffer.

Desktop publishing projects need lots of memory if a large number of complex graphic images are being used. Images stored as PICTs are smaller than images stored in TIFF format. A small piece of clip art stored as a PICT might take up 20–120K, while a full color TIFF format of the same image might be 500K to 3MB. The advantage of TIFFs is that they are more easily transported from one type of computer to another. 

Common high memory configurations today are 20MB (4x4MB SIMMs and 4x1MB), 32MB (8x4MB), 70MB (4x16MB and 4x4MB), and 128MB (8x16MB). The Power Mac 8100 sets a new top end of 264MB (16x16MB +8MB).